// components/recommend/recommend.js
Component({
  data: {
    cover:[],
    month:[],
    hot:[],
    params:
      {
        skip:0,
        limit:12
      },

    total: 0,
    baseURL:"http://118.190.104.39:3000/"
  },

  /*** 组件的方法列表*/
  methods: {
    // 定义函数
    getCover(){
      wx.request({
        //获取接口地址
        url: 'http://118.190.104.39:3000/home/cover',
        // 箭头函数，优化this指向
        success: (res) => {
          // 获取服务器返回的数据
          // 更新到data去，实现页面数据绑定
          this.setData({
            cover: res.data.data
          })
        }
      })
    },
    getMonth(){
      wx.request({
        url: 'http://118.190.104.39:3000/home/month',
        success: (res) => {
          // 获取服务器返回的数据
          // 从服务器拿到month对象
          var month = res.data.data

          // 拿到服务器的日期
          var time = res.data.data.date
          var date=new Date(time)

          // 通过js内置对象调用get方法得到,day和month
          var day = date.getDate()
          var yue=date.getMonth()+1   

          // 通过字符串的组合得到要求的日期类型             
          var riqi=day + " / " + yue + "月"

          // 在month对象中加上riqi这个属性
          month.riqi=riqi

          // 更新到data去，实现页面数据绑定
          this.setData({
            month:month
          })
        }
      })
    },
    getHot(){
      //加载中的提示
      wx.showLoading({
        title: '数据在路上'
      })
      wx.request({
        //获取接口地址
        url: 'http://118.190.104.39:3000/home/hot',
        data:this.data.params,
        // 箭头函数，优化this指向
        success: (res) => {
          // console.log(res.data.data.list)
          // 更新到data去，实现页面数据绑定
          this.setData({
          // hot里面应该存储每一次获得的数据
          //把data里定义的hot，和从服务器返回的list数据，使用es6展开运算符实现合并
            hot: [...this.data.hot, ...res.data.data.list],
            //获取数据总条数
            total:res.data.data.total
          })
          wx.hideLoading()
        }
      })

    },
    //触底事件，完成分页功能
    scrolltolower(){
      if(this.data.params.skip>=this.data.total){
        //提醒用户没有更多数据了
        wx.showToast({
          title: '我是有底线的！',
          //去除默认图标
          icon: 'none'
        })
        //终止程序
        return
      }
      //拿到请求参数
      var params=this.data.params
      //修改参数中的skip值
      params.skip +=12
      //将修改过的参数值更新到data里去
      this.setData({
        params:params
      })
      //调用方法重新发起数据请求
      this.getHot()
    }

  },
  // 生命周期函数
  lifetimes: {
    attached: function () {
      // 调用函数
      this.getCover(),
      this.getMonth(),
      this.getHot()
    },
    
  },
})
